Linux下制作.run安装包

您所在的位置:网站首页 used to 反义疑问句的用法归纳 Linux下制作.run安装包

Linux下制作.run安装包

2024-07-04 11:26:11| 来源: 网络整理| 查看: 265

Linux平台下的.run安装包,本质上就是安装脚本+安装文件压缩包。和deb、rpm安装包相比,它的优点是操作比较简单,缺点是做一些比较复杂的安装包,安装脚本的编写会很麻烦。

.run安装包的结构如下所示:

123456789|-----------------| | | | 安装脚本 | | | |-----------------| | | | 程序文件压缩包| | | |-----------------|

文件的前N行是安装脚本install.sh,安装脚本后面紧跟着的是程序文件的压缩包。

打包脚本

通过打包脚本,我们可以将.run安装包的程序文件和安装脚本打包到一起生成.run文件。

package.sh

1234567891011121314151617#!/bin/bash #将源文件打包成压缩包 tar czvf package.tar.gz package #创建.run的输出目录 mkdir -p output #从外界获取输入的版本号 echo "请输入版本号,回车结束, 示例(1.0.0)" read -p "请输入:" version if [ ! -n "$version" ]; then     version=1.0.0.1 fi # 打包生成.run文件 cat install.sh package.tar.gz > output/test_"$version".run # 删除之前的文件压缩包 rm  -f package.tar.gz 安装脚本

安装脚本在安装的时候被调用,负责对程序包进行解压缩,并把对应的程序文件拷贝到相应的安装目录下。最后执行一些安装处理操作。 install.sh

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162#!/bin/bash #跳转行数,负责定位到压缩包所在的位置 lines=63 #检查系统的架构是否符合 if [[ "x86_64" =~ "$(arch)" ]] then     echo "架构相同" else     echo "架构不同, 本机架构为$(arch)"     exit 0 fi homepath=~ #获取安装路径 echo "输入安装路径, 按下回车确认,默认路径(${homepath})" read -p "请输入:" installpath if [ ! -n "$installpath" ]; then     installpath=$homepath fi #解压对应的程序包 #根据安装脚本的行数,跳转到压缩包所在的位置 tail -n +$lines $0 > package.tar.gz #解压缩 tar zxvf package.tar.gz #将解压缩之后文件拷贝到对应的安装目录 mkdir -p $installpath/install/test cp -r package $installpath/install/test #检查用户路径,获取桌面路径 test -f ~/.config/user-dirs.dirs && . ~/.config/user-dirs.dirs desktopDir=~/${XDG_DESKTOP_DIR##*/} #生成快捷方式,替换快捷方式中的安装路径 sed -i "s#INSTALLPATH#${installpath}#g" $installpath/install/test/test.desktop #applications文件夹如果不存在则创建 if [ ! -d ~/.local/share/applications ];then     mkdir -p ~/.local/share/applications fi #拷贝桌面快捷方式 cp $installpath/install/test/test.desktop ~/.local/share/applications #自定义协议启动 xdg-mime default test.desktop x-scheme-handler/clerk #快捷方式发送到桌面,并修改可执行权限 cp $installpath/install/test/test.desktop ${desktopDir} chmod +x ${desktopDir}/test.desktop #移除无用文件 rm -rf $installpath/install/test/test.desktop rm -rf package rm -rf package.tar.gz exit 0 桌面快捷方式

为了方便程序的使用,我们会给安装包程序添加快捷方式,在安装的过程中将快捷方式发送到桌面上。对应的快捷方式的内容如下: test.desktop

12345678[Desktop Entry] Type=Application Version=1.0.9 Name=测试工具 Comment=Run test Icon=INSTALLPATH/logo.png Exec=INSTALLPATH/test Terminal=false

安装的过程中会动态替换INSTALLPATH为实际的安装路径。

安装包赋权

打包好的.run文件默认是没有执行权限的,我们需要通过命令行给.run安装包赋权,对应的操作如下:

1chmod +x test_1.0.9.run

赋权之后,我们就可以对run安装包进行安装操作了。



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭